1. Technical Field
The present invention relates to the field of computer software and, more particularly, to methods of rendering three dimensional graphics on a rendering server.
2. Description of Related Art
Traditionally, three dimensional (3D) graphics technology has been limited to use mainly on client computers (i.e., computers on an end users desk). However, several trends are emerging that are driving 3D graphics into the server domain.
One trend driving 3D graphics into the server domain is the increasing size of 3D graphics rendering jobs. For example, visualizing the seismic data for large oil fields involves a vast amount of data and processing power. Thus, to handle jobs of this sort requires very large and expensive graphics computers. These types of systems may be for example, greater than $100,000 per computer. It is not practical to have computers of this sort on every user""s desk. Instead, the industry is looking toward 3D rendering servers as a method to solve the problem. In this manner, the 3D graphical images are generated on the server, utilizing its enormous computing resources, with the resulting image distributed to the end users for display on the end user""s computer.
A second trend driving 3D graphics into the server domain is xe2x80x9ccasual viewingxe2x80x9d of 3D graphics. There is a large class of users that need to view 3D graphical images, but do not need to design, edit, or xe2x80x9cfly throughxe2x80x9d the 3D graphical image. These people include managers, finance planners, and shop floor workers. It is not practical to provide 3D graphics hardware to every user that needs to do xe2x80x9ccasual viewing.xe2x80x9d Instead, the industry is looking to 3D rendering servers as a method to solve this problem.
One problem with the move towards 3D rendering servers is that very little work has been done on 3D rendering servers. Instead, the industry currently takes standard workstation systems and use these systems as 3D graphics rendering servers. However, workstations are designed to be used by one person at a time, not by many people. However, servers need to perform several functions at once for many different users. Thus, when a workstation is converted into a 3D graphics rendering server, its function and design tend toward performing one graphics job at a time. This severely limits the scalability (i.e. ability to handle many concurrent tasks) and overall power of the 3D graphics rendering server.
Therefore, it is desirable to have a method and apparatus to more efficiently utilize resources of 3D graphics rendering servers.
The present invention provides a method for rendering graphics on a server. In a preferred embodiment, a server receives a request from a requesting device for graphics. The server determines the fastest available rendering resource and dispatches the request to this fastest available rendering resource. Once the graphics have been rendered, the server sends the graphics to the requesting device for presentation to a user.